Streaming media systems are being used to transmit video and audio data over a network to network devices that output the data for receipt by a user. These systems typically transmit data from a central server operated by a provider of the streaming media content data to the end user's network devices. The network used typically is a closed network operated by the provider of the streaming media content data or a service provider who resells the data to end users. Other networks, such as public networks and the Internet may also be used; however these alternate networks may present performance problems associated with providing a latency delay in delivery of the streaming media data within a specified maximum amount of delay.
The ability of the provider of the streaming media content data to increase the number of end users to the system has always presented problems associated with the cost of operating the streaming media servers that send the data to the end users. As the number of users increases, the need for additional servers, the need for additional processors within a server, and the need for additional peripheral devices to support these users' demand for data also increases. The nature of the increase in costs has limited the ability of streaming media providers to grow the size of their networks without incurring prohibitive costs.
Prior solutions utilizing software-only based systems typically were less expensive to create and operate yet these systems did not scale effectively as the number of users increased significantly. Hardware based solutions provided the timing and data transfer mechanisms to allow the number of users to scale more efficiently yet these systems required expensive network interface devices to be part of the streaming server systems. The present invention addresses the limitations of these prior systems to allow for more efficient operation of streaming media servers without the need for special and expensive hardware devices.